package com.ruoyi.system.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 卫星气象数据对象 satellite_weather
 */
public class SatelliteWeather extends BaseEntity {
    private static final long serialVersionUID = 1L;

    /** 数据ID */
    private Long id;

    /** 位置坐标 */
    @Excel(name = "位置坐标")
    private String location;

    /** 经度 */
    @Excel(name = "经度")
    private Double longitude;

    /** 纬度 */
    @Excel(name = "纬度")
    private Double latitude;

    /** 温度 */
    @Excel(name = "温度")
    private Double temperature;

    /** 湿度 */
    @Excel(name = "湿度")
    private Double humidity;

    /** 降雨量 */
    @Excel(name = "降雨量")
    private Double rainfall;

    /** 风速 */
    @Excel(name = "风速")
    private Double windSpeed;

    /** 风向 */
    @Excel(name = "风向")
    private String windDirection;

    /** 气压 */
    @Excel(name = "气压")
    private Double pressure;

    /** 紫外线指数 */
    @Excel(name = "紫外线指数")
    private Integer uvIndex;

    /** 空气质量指数 */
    @Excel(name = "空气质量指数")
    private Integer aqi;

    /** 土壤湿度 */
    @Excel(name = "土壤湿度")
    private Double soilMoisture;

    /** 自然灾害风险 */
    @Excel(name = "自然灾害风险")
    private String disasterRisk;

    /** 数据时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "数据时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date dataTime;

    /** 数据来源 */
    @Excel(name = "数据来源")
    private String dataSource;

    public Long getId() { return id; }
    public void setId(Long id) { this.id = id; }

    public String getLocation() { return location; }
    public void setLocation(String location) { this.location = location; }

    public Double getLongitude() { return longitude; }
    public void setLongitude(Double longitude) { this.longitude = longitude; }

    public Double getLatitude() { return latitude; }
    public void setLatitude(Double latitude) { this.latitude = latitude; }

    public Double getTemperature() { return temperature; }
    public void setTemperature(Double temperature) { this.temperature = temperature; }

    public Double getHumidity() { return humidity; }
    public void setHumidity(Double humidity) { this.humidity = humidity; }

    public Double getRainfall() { return rainfall; }
    public void setRainfall(Double rainfall) { this.rainfall = rainfall; }

    public Double getWindSpeed() { return windSpeed; }
    public void setWindSpeed(Double windSpeed) { this.windSpeed = windSpeed; }

    public String getWindDirection() { return windDirection; }
    public void setWindDirection(String windDirection) { this.windDirection = windDirection; }

    public Double getPressure() { return pressure; }
    public void setPressure(Double pressure) { this.pressure = pressure; }

    public Integer getUvIndex() { return uvIndex; }
    public void setUvIndex(Integer uvIndex) { this.uvIndex = uvIndex; }

    public Integer getAqi() { return aqi; }
    public void setAqi(Integer aqi) { this.aqi = aqi; }

    public Double getSoilMoisture() { return soilMoisture; }
    public void setSoilMoisture(Double soilMoisture) { this.soilMoisture = soilMoisture; }

    public String getDisasterRisk() { return disasterRisk; }
    public void setDisasterRisk(String disasterRisk) { this.disasterRisk = disasterRisk; }

    public Date getDataTime() { return dataTime; }
    public void setDataTime(Date dataTime) { this.dataTime = dataTime; }

    public String getDataSource() { return dataSource; }
    public void setDataSource(String dataSource) { this.dataSource = dataSource; }

    @Override
    public String toString() {
        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
                .append("id", getId())
                .append("location", getLocation())
                .append("longitude", getLongitude())
                .append("latitude", getLatitude())
                .append("temperature", getTemperature())
                .append("humidity", getHumidity())
                .append("rainfall", getRainfall())
                .append("windSpeed", getWindSpeed())
                .append("windDirection", getWindDirection())
                .append("pressure", getPressure())
                .append("uvIndex", getUvIndex())
                .append("aqi", getAqi())
                .append("soilMoisture", getSoilMoisture())
                .append("disasterRisk", getDisasterRisk())
                .append("dataTime", getDataTime())
                .append("dataSource", getDataSource())
                .append("createBy", getCreateBy())
                .append("createTime", getCreateTime())
                .append("updateBy", getUpdateBy())
                .append("updateTime", getUpdateTime())
                .append("remark", getRemark())
                .toString();
    }
}

